পিএইচপি ফাইল খোলা/পড়া/বন্ধ - PHP fopen(), fclose()

এই অধ্যায়ে আপনি জানবেন কিভাবে সার্ভারে একটি ফাইল খোলা, পড়া এবং বন্ধ করা যায়।


পিএইচপি fopen() ফাংশন ব্যবহার করে ফাইল খোলা

সার্ভারে ফাইল খোলার সবচেয়ে সহজ এবং উত্তম পদ্ধতি হলো fopen() ফাংশন এর ব্যবহার। ফাইল ওপেন করার ক্ষেত্রে এই ফাংশনটি আপনাকে readfile() ফাংশনের তুলনায় অনেক বেশি অপশন এবং সুবিধা প্রদান করবে।

পূর্বের মত এই অধ্যায়েও আমরা "abbreviation.txt" টেক্সট ফাইলটি ব্যবহার করবোঃ

"abbreviation.txt" ফাইল

Wi-Fi = Wireless Fidelity 
WiMax = Worldwide Interoperability for Microwave Access
GSM = Global System for Mobile communication
CDMA = Code Division Multiple Access
W-CDMA = Wideband Code Division Multiple Access
AMPS = Advance Mobile Phone System
UMTS = Universal Mobile Telecommunication System
IMT = International Mobile Telecommunication

fopen() সিনট্যাক্স

kt_satt_skill_example_id=239

প্যারামিটার এর বর্ণনাঃ

  • filename- fopen() ফাংশনের মাধ্যমে যে ফাইলটি ওপেন করা হবে সেটির নাম নির্দেশ করে।
  • mode- ফাইলটি যেই মোডে ওপেন হবে সেই মোডকে নির্দেশ করে।

নিচের উদাহরণের মাধ্যমে দেখানো হলো fopen() ফাংশন ব্যবহার করে কিভাবে একটি ফাইল ওপেন করতে হয় এবং যদি নির্দিষ্ট ফাইলটি ওপেন করা সম্ভব না হয় তাহলে কিভাবে একটি ত্রুটি(error) মেসেজ জেনারেট করতে হয়ঃ

kt_satt_skill_example_id=240

নিম্নের টেবিলে ফাইল ওপেন এর বিভিন্ন মোড তুলে ধরা হলোঃ

মোডবিবরণ
rread only মোডে ফাইল ওপেন করে
ফাইল পয়েন্টার ফাইলের একেবারে প্রথম থেকে আরম্ভ হয়।
wwrite only মোডে ফাইল ওপেন করে
বিদ্যমান ফাইলের সকল কন্টেন্ট মুছে ফেলবে অথবা আগে থেকে ফাইল না থাকলে নতুন ফাইল তৈরি করবে। ফাইল পয়েন্টার ফাইলের একেবারে প্রথম থেকে আরম্ভ হয়।
awrite only মোডে ফাইল ওপেন করে
বিদ্যমান ফাইলের সকল কন্টেন্ট সংরক্ষিত থাকবে। ফাইল পয়েন্টার ফাইলের একেবারে শেষ থেকে আরম্ভ হয়। পূর্বে থেকে ফাইল না থাকলে নতুন ফাইল তৈরি করবে।
xwrite only মোডে নতুন ফাইল তৈরি করে
যদি পূর্বে থেকে ফাইল বিদ্যমান থাকে তাহলে FALSE এবং error রিটার্ন করবে।
r+read/write মোডে ফাইল ওপেন করে
ফাইল পয়েন্টার ফাইলের একেবারে শুরু থেকে আরম্ভ হয়।
w+read/write মোডে ফাইল ওপেন করে
ফাইলে কোন তথ্য থাকলে মুছে যাবে। অথবা আগে থেকে ফাইল না থাকলে নতুন ফাইল তৈরি করে। ফাইল পয়েন্টার ফাইলের একেবারে প্রথম থেকে আরম্ভ হয়।
a+read/write মোডে ফাইল ওপেন করে
ফাইল থেকে পূর্বর তথ্য মুছে যাবে না, বরং নতুন তথ্য সংযোজন হবে। ফাইল পয়েন্টার ফাইলের একেবারে শেষ থেকে আরম্ভ হয়। এক্ষেত্রে আগে থেকে ফাইল না থাকলে নতুন ফাইল তৈরি করবে।
x+read/write মোডে নতুন ফাইল তৈরি করে
যদি পূর্বে থেকে ফাইল বিদ্যমান থাকে তাহলে FALSE এবং error রিটার্ন করবে।


 


fread() ফাংশন ব্যবহার করে পিএইচপি ফাইল পড়া

fread() ফাংশন একটি ওপেন করা ফাইল পড়ে।

fread() সিনট্যাক্স

kt_satt_skill_example_id=242

shrotcode

প্যারামিটার এর বর্ণনাঃ

  • filename- fread() ফাংশনের মাধ্যমে যে ফাইলটি ওপেন করা হবে তার নাম নির্দেশ করে।
  • fileSize()- এই ফাংশনটি যে ফাইলটি ওপেন করা আছে তার সাইজ রিটার্ন করে।

উদাহরণঃ fread() ফাংশন ব্যবহার করে abbreviation.txt ফাইল এর সম্পূর্ণ ডেটা পড়া

kt_satt_skill_example_id=243

উপরের পিএইচপি কোড "abbreviation.txt" ফাইল এর একেবারে প্রথম থেকে শেষ পর্যন্ত পড়বেঃ


fclose() ফাংশন ব্যবহার করে ফাইল বন্ধ করা

একটি ওপেন করা ফাইল বন্ধ করার জন্য fclose() ফাংশন ব্যবহার করা হয়।

কোন ফাইল এর কাজ শেষ হলে সেটিকে বন্ধ করে দেওয়া উচিৎ। কারণ আপনি নিশ্চয়ই চাইবেন না যে একটি ওপেন ফাইল আপনার সার্ভারে ঘুরাঘুরি করে অযথা মেমোরি দখল করে রাখুক!

fclose() ফাংশন ব্যবহার করে আপনি যেই ফাইলটিকে ক্লোজ করতে চান প্যারামিটার হিসাবে সেই ফাইলের নাম অথবা ভ্যারিয়েবলের নাম লাগবে(যার মধ্যে ফাইলটি রাখা হয়েছে)।

kt_satt_skill_example_id=244


পিএইচপি fgets() ফাংশন ব্যবহার করে সিঙ্গেল লাইন পড়া

একটি ফাইল থেকে শুধুমাত্র এক লাইন পড়ার জন্য fgets() ফাংশন ব্যবহার করা হয়।

উদাহরণঃ "abbreviation.txt" ফাইলের প্রথম লাইন আউটপুট হিসাবে দেখাবে

kt_satt_skill_example_id=245

বিঃদ্রঃ fgets() ফাংশনকে কল করার পর ফাইল পয়েন্টার পরবর্তী লাইনে অগ্রসর হয়।

পিএইচপি feof() ফাংশন ব্যবহার করে অজানা দৈর্ঘ্যের তথ্য পড়া

eof এর পূর্ণরূপঃ "end-of-file"।
পিএইচপি feof() ফাংশন ফাইল পয়েন্টার ফাইলের শেষে পৌছেছে কিনা চেক করে।

অজানা দৈর্ঘ্য বিশিষ্ট তথ্যকে Loop করার জন্য feof() ফাংশনটি বেশ উপকারী।

উদাহরণfeof() ফাংশনটি "abbreviation.txt" ফাইলের শেষে না যাওয়া পর্যন্ত ফাইলটিকে লাইন বাই লাইন পড়তে থাকবে।

kt_satt_skill_example_id=248


পিএইচপি fgetc() ফাংশন ব্যবহার করে সিঙ্গেল ক্যারেক্টার পড়া

একটি ফাইলের একটি একক ক্যারক্টার বা অক্ষর পড়ার জন্য fgetc() ফাংশন ব্যবহার করা হয়।

নিচের উদাহরণে "abbreviation.txt" ফাইলটিকে ক্যারেক্টার বাই ক্যারেক্টার পড়বে, যতক্ষন না পর্যন্ত শেষ লাইনে পৌছায়ঃ

উদাহরণঃ fgetc() ফাংশনটি "abbreviation.txt" ফাইলের শেষ অক্ষরে না যাওয়া পর্যন্ত ফাইলটিকে ক্যারেক্টার বাই ক্যারেক্টার পড়তে থাকবে।

kt_satt_skill_example_id=250

নোটঃ fgetc() ফাংশনকে কল করার পর ফাইল পয়েন্টার পরবর্তী ক্যারক্টারে অগ্রসর হয়।

Promotion